#注意先安装库： pip install psutil py-cpuinfo torch GPUtil

import platform
import psutil
import cpuinfo
import torch  # 需要安装PyTorch

def get_hardware_info():
    # 系统信息
    print(f"操作系统: {platform.system()} {platform.release()}")
    print(f"架构: {platform.machine()}")
    
    # CPU信息
    cpu_info = cpuinfo.get_cpu_info()
    print(f"\n=== CPU ===")
    print(f"型号: {cpu_info['brand_raw']}")
    print(f"物理核心数: {psutil.cpu_count(logical=False)}")
    print(f"逻辑核心数: {psutil.cpu_count(logical=True)}")
    print(f"主频: {psutil.cpu_freq().max} MHz")
    
    # 内存信息
    mem = psutil.virtual_memory()
    print(f"\n=== 内存 ===")
    print(f"总内存: {mem.total / (1024**3):.2f} GB")
    print(f"可用内存: {mem.available / (1024**3):.2f} GB")
    
    # GPU信息（如有）
    try:
        import GPUtil
        gpus = GPUtil.getGPUs()
        for i, gpu in enumerate(gpus):
            print(f"\n=== GPU #{i} ===")
            print(f"型号: {gpu.name}")
            print(f"显存: {gpu.memoryTotal} MB")
            print(f"计算能力: {torch.cuda.get_device_capability(i)}")
    except ImportError:
        print("\n=== 未检测到GPU ===")

if __name__ == "__main__":
    get_hardware_info()
